Data passing between a digital signal processor ("DSP") and a microcontroller typically requires a significant amount of overhead in the form of either hardware or software protocols. It is difficult to design a system to transfer data between a DSP and microcontroller due to "timing" constraints. For example, both the DSP and microcontroller are internally controlled by firmware or the like having embedded commands which govern when the DSP or microcontroller may send or receive data. These data "cycles" occur periodically or may be actuated when a specific signal, called a hardware "interrupt" is received by the DSP or microcontroller. Using interrupts is a partial solution, but it has its costs. The use of hardware interrupts devours precious processing time from both the DSP and microcontroller, time that could be spent doing other things. Another solution is to use a dual port random access memory ("RAMP") in between the DSP and microcontroller. However, contemporary dual port RAMs are expensive, dense static RAM ("SRAM") devices which have high "pin" counts. Pins are the physical connections which protrude from an electronic device, typically used to connect the device to other devices or signals. To access an SRAM/RAM both the DSP and microcontroller must be designed to include a substantial number of pins which are used to retrieve or send commands or data from/to an SRAM. In addition, certain data communication protocols must be used by the DSP and microcontroller in order for them to distinguish between information which is related to commands and that which is pure data and for making other decisions, such as how much data can be transferred in a given time period and where the data can be sent (i.e., what part of the DSP or microcontroller's memory is available to store data). All of which, again, ties up precious processing time and resources.
Accordingly, it is an object of the present invention to provide for devices which allow for the transfer of data between two or more electronic devices, such as a DSP and microcontroller, which frees both from the need to consider each others' timing constraints.
It is a further object of the present invention to provide for devices which allow for the transfer of data between two or more electronic devices, such as a DSP and microcontroller, and which does not require either device to have a substantial number of pins for retrieving or sending data.
It is still another object of the present invention to provide for devices which allow for the transfer of data between two or more electronic devices, such as a DSP and microcontroller, which reduces the amount of processing time needed to transfer data between devices.
Other objectives, features and advantages of the present invention will become apparent to those skilled in the art from the following description taken in conjunction with the accompanying drawings.